package cn.bonoon.core.plugins;

import java.util.List;

import cn.bonoon.core.info.AnnouncementInfo;
import cn.bonoon.entities.plugins.AnnouncementEntity;
import cn.bonoon.kernel.support.IOperator;
import cn.bonoon.kernel.support.services.GenericService;

public interface AnnouncementService extends GenericService<AnnouncementEntity> {

	List<AnnouncementInfo> read(int page, int size);

	/**
	 * 管理员的公告信息，包括超级管理员，如果是超级管理员，则不需要指定ownerid
	 * 
	 * @param opt
	 * @param len
	 * @return
	 */
	List<AnnouncementInfo> read(IOperator opt, int len);

	/**
	 * 某一子系统的公告，如：门户子系统的公告，那就只有在门户子系统里显示的公告，不应该在其它子系统显示
	 * 
	 * @param key
	 * @param opt
	 * @param len
	 * @return
	 */
	List<AnnouncementInfo> read(String key, IOperator opt, int len);

	List<AnnouncementEntity> byKey(String key);

	List<AnnouncementEntity> byKey(String key, int page);

}
